In communications systems, the transmission control protocol (TCP) is one of main Internet protocols (IPs) for reliable transmission of data packets among applications that run on a host over an IP network. As TCP implementations, various protocols have been developed to maximize throughput and ensure inter-flow fairness. TCP Vegas, Westwood, and Veno are among various TCP protocols as proposed to be specialized in wireless networks. High-speed TCP, cubic, fast, or other similar TCP protocols have also been introduced as protocols for networks with a large bandwidth delay product (BDP). Other TCP suggestions are the data packet center TCP (DCTCP) particularly intended for data packet centers, high-bandwidth ultra low latency (HULL), and other multi-path protocols that simultaneously utilize several transmission paths.
Such TCP protocols of the related art take account of schemes for minimizing delay that occurs within a round-trip time (RTT) measured on TCP. Obtaining minimized inter-application delay is critical, particularly when delay serves as a major issue like it does in real-time streaming applications. For example, application performance may significantly be influenced by the time period from when a data packet transmitting application sends a data packet down to a TCP sender (e.g., the time that the data packet is written in the socket) to when an application receives a data packet from a TCP receiver (e.g., the time that the data packet is read out from the socket).
The TCP protocols of the related art keep the size of the send buffer managed by the TCP sender as large as possible to maximize data packet throughput. For example, given the size of a congestion window, Linux multiplies the memory capacity taken up per data packet with the size of the congestion window, doubles the result to present a larger congestion window size, and determines the doubled value as the size of the send buffer. In the case of Linux, as the congestion window enlarges, the size of the send buffer sharply increases accordingly. As the send buffer managed by the TCP sender enlarges, a sufficient number of data packets may be secured which the TCP sender maybe sent at the earliest opportunity to maintain the maximum throughput. An excessive increase in the size of the send buffer, however, subjects data packets to significant time consumption in waiting for a chance of transmission in the TCP sender rather than being actually transported over the network. The increased inter-application delay may deteriorate the service quality of applications, particularly real-time streaming or video conference applications for which low delay is of importance. Therefore, a need exists for a scheme capable of minimizing inter-application delay without deteriorating the throughput of data packets in TCP.
The above information is presented as background information only to assist with an understanding of the present disclosure. No determination has been made, and no assertion is made, as to whether any of the above might be applicable as prior art with regard to the present disclosure.